/**
 * @file Define.hh
 * @author Xiaoze Lin (linxiaoze96@gmail.com)
 * @brief The common defines shared among various applications.
 * @version 0.1
 *
 * @copyright Copyright (c) 2024
 *
 */

namespace ieda {

#define STATUS_OK 0
#define STATUS_ERROR 1

// #define tie1 (((unsigned int)(-1)) >> 1)
#define tie1 INT_MAX
#define tie0 (tie1 - 1)
#define tiex (tie0 - 1)

// prefix of log output
#define TwoSpace "  "
#define FourSpace "    "
#define SixSpace "      "

// color for different type of mesg
#define InfoColor "\033[49;32m"
#define WarnColor "\033[49;33m"
#define ErrColor "\033[49;31m"
#define NormalColor "\033[0m"

#define ALL_ONES_64 0xffffffffffffffff
#define ALL_ONES_32 0xffffffff
#define ALL_ZEROS 0
#define FIRST_BIT_64 0x8000000000000000
}  // namespace ieda
